iT邦幫忙

2023 iThome 鐵人賽

DAY 3
0

深度學習的工具

昨天介紹到深度學習已經發展一段時間了,因此我們一定要依靠巨人們的肩膀,深度學習會使用到很多數學的概念,例如偏微分、矩陣運算、統計學、機率論等等,透過框架可以很簡單的實現這些技術,就像是廚師不會自己打造鍋子和湯匙,而是使用現有的工具來做飯,目前深度學習已經有許多框架如下:

  • Pytorch: Facebook 在 2017 開源的框架,是個語法簡潔、好上手的框架。

  • Tensorflow1/2: TF1代是深度學習最紅的時機點推出的,因此很多業界都使用此版本,TF2導入動態圖,比較好學習,但是1代和2代很多不相容的點很容易讓人採坑。(Keras已經併入TF)

  • JAX: 之前閱讀很多Google Research的文章都是使用此種架構,主要原因是其對於Google自家的TPU相容性較高。

下圖使用google trends 可以發現Pytorch的討論度在2021年有超越TF的趨勢:

https://ithelp.ithome.com.tw/upload/images/20230908/20153503Ctide5d0Nj.png

還有很多本文沒有提到的,可以把框架想成一種工具,蓋一間好的房子更多取決於你的技術不是工具的廠牌,先開始學習未來再根據領域去轉換也不遲。本系列文章會以Pytroch為範例(因為筆者對Pytorch比較熟XD)。

Cuda(optional)

昨天文章有提及運算能力是深度崛起的原因,因為深度學習可平行運算的原因使得GPU的平行運算可以提升訓練速度,NVIDIA為了讓開發者更方便而開發了類似C語言的CUDA語言,如果你的電腦有GPU的可以依照型號安裝CUDA toolkit

安裝 Pytorch

主要透過Python來使用Pytorch,若是還沒安裝的可以參考安裝教學,進入Pytroch 網站後點選下載的版本,點選你使用的作業系統、安裝的方式、程式語言和運作的硬體產生commend(此文以CPU為範例),接著打開terminal貼上即可。

https://ithelp.ithome.com.tw/upload/images/20230908/20153503rOSALikJEL.png

驗證一下安裝的結果

開啟terminal,並輸入以下指令進入交互介面:

python

測試以下程式碼:

import torch # 此行會將pytorch套件引入
x = torch.rand(5, 3) # 使用 pytorch 生成5*3的矩陣並隨機給值
print(x) # 在螢幕上秀出矩陣

如果輸出以下畫面表示成功了!

https://ithelp.ithome.com.tw/upload/images/20230908/20153503MhrzqsiUcr.png

結語

深度學習開發人員通常都會使用GPU來訓練模型,考量到追蹤本課程的人可能是嘗試或是電腦沒有GPU配備,因此對於如何使用CUDA沒有深入探討,若是慢慢對於此領域有興趣的非常建議入手有GPU的電腦來提升效率

深度學習工程師需要GPU就像畫家需要畫筆一樣~XD


上一篇
Day2 什麼是深度學習
下一篇
Day 4 透過 Pytorch 中的 torchvision 讀取資料
系列文
30天把AI知識傳授給女友30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言